* {
    padding: 0px;
    margin: 0px;
    box-sizing: border-box;
}
body {
    margin: 100px;
    background-color: lightcyan;
}
.mine-cell {
    display: inline-flex;
    width: 15px;
    height: 15px;
    background-color: rgb(192, 192, 192);
    border: 2px solid rgb(255, 255, 255);
    border-right-color: rgb(128, 128, 128);
    border-bottom-color: rgb(128, 128, 128);
    font-size: 0px;
    justify-content: center;
    align-items: center;
    cursor: pointer;
    user-select: none;
}
.mine-cell:hover {
    border: 1px solid rgb(128, 128, 128);
}
.mine-cell.open {
    border: 1px solid rgb(128, 128, 128);
    border-top-width: 0;
    border-right-width: 0;
    font-size: 12px;
}
.mine-cell.open.open-zero {
    font-size: 0px;
}
.mine-cell:last-child.open {
    border-right-width: 1px;
}
.mine-cell.open.over {
    background: rgb(192, 192, 192) url('mine.png') no-repeat center;
    background-size: 100%;
    font-size: 0;
}
.mine-line {
    display: flex;
}
.mine-line:first-child .mine-cell.open {
    border-top-width: 1px;
}
#id-div-map {
    display: inline-block;
}